1. Technical Field
The present invention is directed to an apparatus and method for deletion of objects from an object relational system in a customizable and database independent manner. In particular, the present invention is directed to deletion of data representations of objects stored as records in a relational database and modification or deletion of records of child objects of the deleted record.
2. Description of Related Art
In an object-relational system, i.e. a system having applications containing objects whose attributes are defined in a relational database, the state of an object is stored as a record in a relational database table. In the relational database, there are foreign-key constraints, or dependency constraints, that ensure the integrity of the data. When a data representation of an object is deleted from the relational database the deletion of the underlying database record must abide by the database constraints, i.e. if there are any dependencies, the deletion must be handled accordingly.
Traditionally, this has been handled by database triggers which represent a custom and non-portable, i.e. database-specific, solution to ensure database integrity. However, this solution does not lend itself to a heterogeneous environment. Thus, for example, a relational database, such as Oracle, is used to define triggers for deletion of data representations of objects in the relational database. These same triggers will not be useable if the underlying relational database system is changed to IBM DB2. In other words, the same triggers cannot be used for the deletion of data representations of objects in a plurality of different relational database systems, since they are written in database-specific languages.
Thus, it would be beneficial to have an apparatus and method for the deletion of objects in a relational database that is customizable and not database-specific.